package qc.module.qms.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import qc.common.core.enums.qms.QmsDataFlowOperateTypeEnum;
import qc.common.core.enums.qms.QmsPointTimeSegmentEnum;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * QmsLogDataflow
 *
 * @author QuCheng Tech
 * @since 2025/10/9
 */
@Data
@TableName("qms_log_dataflow")
public class QmsLogDataflow implements Serializable, Cloneable {
    /**
     * 节点ID;当前处理节点ID
     */
    @TableId
    private String nodeid;
    /**
     * 流程ID;全局ID，触发的源头
     */
    private String flowid;
    /**
     * 来源节点ID;上一个节点ID
     */
    private String fromnodeid;
    /**
     * 点号ID
     */
    private String pointid;
    /**
     * 点号时段类型
     */
    private QmsPointTimeSegmentEnum pointtmseg;
    /**
     * 点号起始时标
     */
    private LocalDateTime pointbegintm;
    /**
     * 点号截止时标
     */
    private LocalDateTime pointendtm;
    /**
     * 处理类型;当前节点的动作，计算、预警、转发等
     */
    private QmsDataFlowOperateTypeEnum optype;
    /**
     * 是否为人工操作
     */
    private boolean ismanual;
    /**
     * 处理说明;操作的信息及说明
     */
    private String opinfo;
    /**
     * 处理起始时间;当前节点的处理开始时间
     */
    private LocalDateTime begintm;
    /**
     * 处理结束时间;当前节点的处理结束时间
     */
    private LocalDateTime endtm;
    /**
     * 处理是否成功
     */
    private boolean issuccess;
    /**
     * 处理结果说明
     */
    private String opresult;
    /**
     * 耗时毫秒数
     */
    private Long millis;
    /**
     * 写入时间
     */
    private LocalDateTime intm;
}
